#ifndef __MAIN_H__
#define __MAIN_H__

#include "FSM_Lite.h"

/*************************** Flow App ************************/
#define Sys_Init_Evt    0x01  // 初始状态
#define Sys_Time_Evt    0x02  // 定时任务
#define Sys_IDLE_Evt    0x04  // 关机
#define Sys_All_Evt     0xFF  // 所有事件

typedef struct FlowTag {
    fsm_sta_t  Status;
    fsm_sta_t  Event;
    fsm_time_t nTicks;
    uint8_t    Run;

    // uint8_t BatV_Low_Sta;         // 低压标志
    // uint8_t BatV_SuperLow_Sta;    // 超低压标志
    // uint8_t Charge_Ing_Sta;       // 充电状态
    // uint8_t Charge_Full_Sta;      // 充满状态
    // uint8_t DisCharge_Min_OC_Sta; // 过流 1.5A
    // uint8_t DisCharge_Max_OC_Sta; // 过流 7.0A

    // uint8_t Charge_Full_Count;
    // uint8_t LED_Blink_Charge_Count;

    // uint16_t PWR_Up_Delay;
    // uint16_t PWR_Down_Delay;
} Flow_Str;

extern Flow_Str Flow_Control;

#endif
